Platform Explorer / Nuxeo Platform 2023.9

Component org.nuxeo.runtime.management.ResourcePublisher

Documentation

Management resource publishers, resources can be nuxeo services or factories.

Requirements

Resolution Order

804
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Start Order

923
The start order represents the order in which this component has been started by the Nuxeo Runtime framework.
This number is interesting to tweak if your Java component interacts with other components, and needs to be started before or after another one.
It can be changed by implementing the method "Component#getApplicationStartedOrder()" on your Java component: components are sorted according to this reference value, in increasing order.
The default value is 1000, and the repository initialization uses number 100. Negative values can also be used.

Implementation

Class: org.nuxeo.runtime.management.ResourcePublisherService

Services

Extension Points

Contributions

XML Source

<?xml version="1.0"?>
<component name="org.nuxeo.runtime.management.ResourcePublisher">

	<documentation>
	Management resource publishers, resources can be nuxeo services or factories.
	</documentation>

  <implementation class="org.nuxeo.runtime.management.ResourcePublisherService" />

  <service>
    <provide interface="org.nuxeo.runtime.management.ResourcePublisher" />
  </service>

  <require>org.nuxeo.runtime.management.ServerLocator</require>

  <extension-point name="services">
    <documentation>
        <p>Publish a nuxeo service as a management resource.</p>
        <p>Here is the parameters description :
        the <emph>name</emph> is used as a shortcut name,
        the <emph>ifaceClass</emph> is used to locate the service,
        the <emph>class</emph> is instrumented for publishing management information.</p>
        <p>The following line figures out how we have published the runtime management service itself.
        <br/>&lt;service name="managementResourcePublisher" class="org.nuxeo.runtime.management.ResourcePublisher" ifaceClass="prg.nuxeo.runtime.management.ResourcePublisherService"&gt;
        </p>
    </documentation>
    <object class="org.nuxeo.runtime.management.ServiceDescriptor" />
  </extension-point>

  <extension-point name="factories">
      <documentation>
        <p>Publish a class that will be call backed at initialization time for
        registering resources.</p>
	<p>The following information have to be provided : the fully qualified factory <emph>class</emph> name.
	The referenced class should implement <emph>ResourceFactory</emph> class.</p>
	<p>The following line figures out how to publish a factory.<br/>
	&lt;factory class="my.FactoryClass"&gt;
	</p>
      </documentation>
    <object class="org.nuxeo.runtime.management.ResourceFactoryDescriptor" />
  </extension-point>

  <extension-point name="shortcuts">
      <documentation>
        <p>Define a shortcuts to a published resource.</p>
        <p>Nuxeo's published resources are published by the service using that shortcut</p>
        <p>The following information have to be provided : the shortcut <emph>name</emph>, the management <emph>qualifiedName</emph> and the mbean server <emph>locator</emph> pattern.</p>
        <p>The following line figures out how using it.<br/>
        &lt;shortcut name="publisher" qualifiedName="org.nuxeo:name=managementResourcePublisher,type=service" locator="org.nuxeo"/&gt;
        </p>
      </documentation>
    <object class="org.nuxeo.runtime.management.ShortcutDescriptor" />
  </extension-point>

  <extension target="org.nuxeo.runtime.management.ResourcePublisher"
    point="services">
    <service name="managementResourcePublisher" class="org.nuxeo.runtime.management.ResourcePublisher" ifaceClass="prg.nuxeo.runtime.management.ResourcePublisherService"/>
  </extension>

</component>